#include <linux/init.h>
//#include <linux/access.h>
#include <linux/module.h>
#include <linux/input.h>
#include <linux/of.h>
#include <linux/device.h>
#include <linux/platform_device.h>


static int test_gpio_keys_probe(struct platform_device *pdev)
{
	struct device

	input->name = "test-gpio-key";
	input->phys = "test-gpio-key/input0";
	input->dev.parent = ;
		

}

static int test_gpio_keys_remove(struct platform_device *pdev)
{


}



static irqinterupt_t 





static struct of_device_id  test_gpio_keys_of_match[] = {
	{.compatible = "test-gpio-key",},
	{},
};

MODULE_DEVICE_TABLE(of,test_gpio_keys_of_match);

static struct platform_driver test_gpio_keys_device_driver = {
	.probe 		= test_gpio_keys_probe,
	.remove 	= test_gpio_keys_remove,
	.driver		= {
		.name	= "test-gpio-key",
		.owner	= THIS_MODULE,
		.of_match_table = of_match_ptr(test_gpio_keys_of_match),
	}
};


static int __init test_gpio_keys_init(void)
{
	printk("%s enter",__func__);
	return platform_driver_register(&test_gpio_keys_device_driver);
}

static void __exit test_gpio_keys_exit(void)
{
	printk("%s exit",__func__);
	platform_driver_unregister(&test_gpio_keys_device_driver);
}





module_init(test_gpio_keys_init);
module_exit(test_gpio_keys_exit);

MODULE_AUTHOR("MrVW");
MODULE_LICENSE("GPL v2");
MODULE_DESCRIPTION("A simple hello");
MODULE_ALIAS("a simple hello");
